home *** CD-ROM | disk | FTP | other *** search
- Version 2.35
-
- 12-02-91
-
- Added software serialization and access codes. When MarxMenu is first
- run it asks you for your serial number and access code. This unlocks
- MarxMenu for your system.
-
- UnBlank command has been expanded to allow you to set UnBlank to true
- when you want to override MarxMenu's internal unblank logic. This allows
- you to write external programs for MarxMenu to use as a screen blanker.
-
- VarType (Variable) : String
- VarType returns the type of data contained in a variable. Types returned
- include the following:
-
- NUL
- NUMBER
- REAL
- STRING
- ARRAY
- FILE
- POINTER
- PROCEDURE
- UNKNOWN
-
- NovVolumeNumber (Directory) : Number
- Returns the Novell volume number of a directory.
-
- Example:
- Writeln NovVolumeNumber ('F:')
-
- NovScanTrusteePaths (2D Array,ObjectNane,ObjectType)
- Returns a 2 dimensional array containing the name of the trustee paths
- assigned to the object and the trustee access rights.
-
- Example:
- var X
- NovScanTrusteePaths (X,'MARC',1)
- Loop X
- Writeln X[LoopIndex,1] ' ' X[LoopIndex,2]
- EndLoop
-
- 12-16-91
-
- ReadAscTextFile (FileName,2D Array)
- ReadAscTextFile reads a standard comma delimited text file into a two
- dimensional array. The lines of the file must be limited to 255
- characters and the number of lines must be less than 13100. It also has
- to fit in memory.
-
- All text in quotes is converted to strings. Numbers not in quotes are
- translated as numbers unless there is a '.' in which case they are
- translated as floating point numbers.
-
- 12-19-91
- Enhanced the Password command. The password is case sensitive if the
- password in the source code is lower case. But if the password in the
- source code is in uppercase then the password is not case sensitive.
-
- Example:
- Password 'CRITTER' 4 3 ;will accept critter or CRITTER
- Password 'CriTTeR' 4 3 ;will only accept CriTTeR
-
- 12-30-91
- Enhanced the way the inverse bar works. You can now have a window with
- multiple colors and move the inverse bar over them and it restores the
- original color.
-
-
- HexString (Number, Length) : String
- HexString converts a number into a base 16 hexadecimal string. If Length
- > 0 then the number will have enough leading zeros to make it Length
- long. If Length = 0 then leading zeros are removed. Length must be 8 or
- less.
-
- Example:
- Writeln HexSt(253,4) ;returns 00FD
- Writeln HexSt(253,0) ;returns FD
-
-
- BinString (Number, Length) : String
- BinString converts a number into a base 2 binary string. If Length > 0
- then the number will have enough leading zeros to make it Length long.
- If Length = 0 then leading zeros are removed. Length must be 32 or less.
-
- Example:
- Writeln HexSt(45,8) ;returns 00101101
- Writeln HexSt(45,0) ;returns 101101
-
-
- GetMem (Number) : Segment
- GetMem allocates the amount of memory specified in Number and returns
- the memory segment where the memory was allocated. The memory segment is
- filled with 0s. The maximum size of the memory block is 65504 bytes.
-
- You can then read and write to this memory area using the Mem commands.
-
- Example:
- var RamBlock
- RamBlock = GetMem(2000) ;allocate 2000 bytes of memory
- Mem(RamBlock,0) = 5 ;writes the number 5 to the first byte
-
-
- FreeMem(Segment)
- FreeMem deallocates memory that was allocated with GetMem. FreeMem
- automatically knows how much memory to deallocate.
-
-
- ReadFileBlock (Name,Offset,Size,Segment)
- ReadFileBlock reads disk file Name starting at byte Offset for Size
- bytes into memory buffer Segment. It is intended to read any kind of
- file.
-
- The maximum value for Size is 65504. The segment must be as large as the
- number of bytes you are reading. The following example will copy a small
- file.
-
- Example:
- Var RamBlock Size
- Size = FileSize 'MARXREAD.ME'
- RamBlock = GetMem(Size)
- ReadFileBlock('MARXREAD.ME' 0 Size RamBlock)
- WriteFileBlock('COPYREAD.ME' 0 Size RamBlock)
- FreeMem(RamBlock)
-
-
- WriteFileBlock (Name,Offset,Size,Segment)
- WriteFileBlock writes disk file Name starting at byte Offset for Size
- bytes from memory buffer Segment. It is intended to write any kind of
- file. If the file doesn't exist, it is created.
-
- The maximum value for Size is 65504. The segment must be as large as the
- number of bytes you are writing.
-
- Now, a feature you've all been waiting for. You can now make MsDos and
- Interrupt calls directly from MarxMenu.
-
-
- MsDos (Registers)
- MsDos calls the interrupt 21h system call using values passed in an
- array of 10 numbers. The array is set up using predefined Qualifiers
- that represent the registers that are passed. These qualifiers are:
-
- AX BX CX DX DI SI DS ES BP FL
-
- Example: Get Current Drive
- var Reg
- Reg.AX = $1900
- MsDos(Reg)
- Writeln Char(LowWord(Reg.AX) + 1) ':' ;writes C:
-
-
- Intr (Interrupt,Registers)
- Intr works just like MsDos except that it lets you choose which
- interrupt you want to call.
-
-
- HighWord (Number) : Number
- Returns the value of the upper 16 bits of a number.
-
-
- LowWord (Number) : Number
- Returns the value of the lower 16 bits of a number.
-
-
- Segment (String) : Number
- Returns the memory segment where string is located.
-
-
- Offset (String) : Number
- Returns the memory offset where string is located.
-
-
- New Novell Goodies:
-
- NovMyPrintQueues (Array)
- Returns a list of all print queues that the user has access too.
-
-
- NovTotalVolumeSpace (Path) : Number
- Returns the total file space of the volume in bytes.
-
- Example:
- Writeln NovTotalVolumeSpace 'SYS:'
- Writeln NovTotalVolumeSpace 'F:'
-
-
- NovFreeVolumeSpace (Path) : Number
- Returns the free file space of the volume in bytes.
-
- Example:
- Writeln NovFreeVolumeSpace 'SYS:'
- Writeln NovFreeVolumeSpace 'F:'
-
-
- NovTotalDirSlots (Path) : Number
- Returns the total number of directory slots for this volume.
-
- Example:
- Writeln NovTotalDirSlots 'SYS:'
- Writeln NovTotalDirSlots 'F:'
-
-
- NovFreeDirSlots (Path) : Number
- Returns the number of free directory slots for this volume.
-
- Example:
- Writeln NovFreeDirSlots 'SYS:'
- Writeln NovFreeDirSlots 'F:'
-
- ===============================================================
-
- Version 2.36
-
- 01-07-91
-
- SplitPath (Array)
- SplitPath reads the PATH environment variable and splits it up into and
- array of strings that are directories the path is made up of. All
- directory names are capitalized.
-
-
- BuildPath (Array)
- BuildPath sets the PATH environment variable to the driectories listed
- in the Array variable. The first element in the array becomes the first
- search path.
-
- 01-18-91
-
- ****** Good news for VINES users! ******
-
- Banyan has sent me a free copy of Vines so I can add Vines goodies to
- marxMenu. (Thanks to Dan Pettengell) And I have started to get it
- working. I've set up the server and am running Vines and Netware on the
- same workstation.
-
- It may be because I'm just used to Novell but so far I have found
- learning Vines somewhat awkward. Perhaps this means there is a market
- for some serious utilities here. I welcome any feedback on the subject.
-
- All Vines commands will start with the prefix Vin.
-
-
- VinesLoaded : Boolean
- VinesLoaded returns True if the Vines shell is loaded.
-
- VinesInt : Number
- Returns the interrupt number the Vines software is servicing.
-
- VinUserName : String
- Returns the StreetTalk name of the person who is logged in.
-
- VinSerialNumber (Drive) : Number
- Returns the Vines serial number on the server that the drive letter
- referrences.
-
- Example:
- Writeln VinSerialNumber ('Z')
-
- VinCheckService (Service) : Number
- Returns information about the requested service.
-
- Services:
-
- 1 - Communications
- 2 - Primary 3270 Emulation ID
- 3 - Async Terminal Emulation
- 4 - File Deflection
- 5 - BPS
- 6 - UnDocumented
- 7 - StreetTalk
- 8 - Environment
- 9 - NetBios
- 10 - Secondary 3270 Emulation ID
- 11 - Semaphore
- 12 - 3270 Emulation Active Status
- 13 - 3270 Keyboard Interrupt Simulator
- 14 - Advanced 3270 SNA
- 15 - UnDocumented
- 16 - UnDocumented
-
- Return Codes:
- 0 - Service is Installed
- 1 - Service is not Installed
- 2 - Invalid Service Number